home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / gamtlk11.zip / source.zip / CARIBBEAN POKER / COMMAND.CPP < prev    next >
C/C++ Source or Header  |  1999-12-10  |  3KB  |  114 lines

  1. //
  2. // File: Command.CPP
  3. //
  4. // Command and resize handlers for the Caribbean Poker game
  5. //
  6. #include "CPoker.HPP"
  7.  
  8. //
  9. // ACommandHandler::ACommandHandler(CPOKER *Frame)
  10. //
  11. // Default constructor for the command handler class
  12. //
  13. ACommandHandler::ACommandHandler(CPOKER *Frame) : frame(Frame)
  14. {
  15. }
  16.  
  17. //
  18. // ACommandHandler::~ACommandHandler()
  19. //
  20. // Default destructor for the command handler class.
  21. //
  22. ACommandHandler::~ACommandHandler()
  23. {
  24. }
  25.  
  26. //
  27. // bool ACommandHandler::command(ICommandEvent& cmdEvent)
  28. //
  29. // Command handler
  30. //
  31. bool ACommandHandler::command(ICommandEvent& cmdEvent)
  32. {
  33.    bool eventProcessed(true);    // Assume handler handled event
  34.  
  35.    switch(cmdEvent.commandId()) {
  36.       case PB_PROGRESSIVE:
  37.          if(frame->ivoryChip)
  38.             frame->removeIvory();
  39.          else frame->addIvory();
  40.          break;
  41.       case PB_BETFIELD:
  42.          if(frame->State==CPOKER::DONE)
  43.             frame->deal();
  44.          else if(frame->State==CPOKER::DEAL)
  45.             frame->draw();
  46.          else if(frame->State==CPOKER::BET)
  47.             frame->bet();
  48.          break;
  49.       case PB_FOLD:
  50.          frame->fold();
  51.          break;
  52.       case PB_BET:
  53.          frame->bet();
  54.          break;
  55.       case IDM_DRAW:
  56.       case IDM_STUD:
  57.          frame->selectGame(cmdEvent.commandId());
  58.          break;
  59.       case IDM_ADD:
  60.          frame->addMoney();
  61.          break;
  62.       case IDM_CASHOUT:
  63.          frame->cashOut();
  64.          break;
  65.       case IDM_EXIT:
  66.          frame->saveProfile();
  67.          frame->close();
  68.          break;
  69.       default:
  70.          if(cmdEvent.commandId()>=PLAYER_HAND && cmdEvent.commandId()<PLAYER_HAND+HANDSIZE && frame->State==CPOKER::DEAL)
  71.          {
  72.             if(frame->Profile.game()==IDM_DRAW && (frame->PlayerHand.numMarked()<NUM_DRAWABLE || frame->PlayerHand.cardMarked(cmdEvent.commandId()-PLAYER_HAND)))
  73.                frame->PlayerHand.toggleMark(cmdEvent.commandId()-PLAYER_HAND);
  74.          } else eventProcessed=false;
  75.          break;
  76.    }
  77.    return(eventProcessed);
  78. }
  79.  
  80. //
  81. // bool ACommandHandler::systemCommand(ICommandEvent& cmdEvent)
  82. //
  83. // Handles system commands
  84. //
  85. bool ACommandHandler::systemCommand(ICommandEvent& cmdEvent)
  86. {
  87.    bool eventProcessed(true);
  88.  
  89.    switch(cmdEvent.commandId()) {
  90.       default:
  91.          eventProcessed=false;
  92.    }
  93.    return(eventProcessed);
  94. }
  95.  
  96. //
  97. // AResizeHandler::AResizeHandler(CPOKER *Frame)
  98. //
  99. // Constructor for resize frame handler
  100. //
  101. AResizeHandler::AResizeHandler(CPOKER *Frame) : frame(Frame)
  102. {
  103. }
  104.  
  105. //
  106. // bool AResizeHandler::windowResize(IResizeEvent& resizeEvent)
  107. //
  108. // Handles window resizing
  109. //
  110. bool AResizeHandler::windowResize(IResizeEvent& resizeEvent)
  111. {
  112.    // Resize buttons
  113.    return frame->sizeClient(resizeEvent);
  114. }